import { get, post } from './request'

/**
 * 获取首页模块数据
 * @returns {Promise} - 模块数据
 */
export function getModules() {
  return get('/home/modules')
}

/**
 * 获取首页新闻列表
 * @param {Object} params - 查询参数
 * @returns {Promise} - 新闻列表
 */
export function getNewsList(params) {
  return get('/home/news', params)
}

/**
 * 获取附近商户
 * @param {Object} params - 位置参数
 * @returns {Promise} - 商户列表
 */
export function getNearbyMerchants(params) {
  return get('/home/merchants', params)
}

/**
 * 获取红包列表
 * @param {Object} params - 位置参数
 * @returns {Promise} - 红包列表
 */
export function getRedPackets(params) {
  return get('/home/redpackets', params)
}

/**
 * 领取红包
 * @param {Number} id - 红包ID
 * @returns {Promise} - 领取结果
 */
export function claimRedPacket(id) {
  return post(`/home/redpackets/${id}/claim`)
}

/**
 * 获取用户位置
 * @returns {Promise} - 位置信息
 */
export function getUserLocation() {
  return get('/home/location')
}

/**
 * 更新用户位置
 * @param {Object} data - 位置数据
 * @returns {Promise} - 更新结果
 */
export function updateUserLocation(data) {
  return post('/home/location', data)
}

/**
 * 获取地图标记点
 * @param {Object} params - 地图范围参数
 * @returns {Promise} - 标记点列表
 */
export function getMapMarkers(params) {
  return get('/home/map/markers', params)
}

/**
 * 搜索
 * @param {Object} params - 搜索参数
 * @returns {Promise} - 搜索结果
 */
export function search(params) {
  return get('/home/search', params, { showLoading: true })
}

/**
 * 获取首页轮播图
 * @returns {Promise} - 轮播图数据
 */
export function getBanners() {
  return get('/home/banners')
}